Systems and methods for controlling an electronic device

ABSTRACT

The invention, in one embodiment, is directed to a controller apparatus for controlling an electronic device by sensing and processing a user&#39;s interactions with an object and, particularly, for controlling and interacting with a media guidance application implemented on an interactive user equipment device. The controller apparatus may include a platform, a liquid container, and a stirring rod. The platform may include sensors of various kinds for detecting a user&#39;s interactions with any one of the components of the user interface system. The controller apparatus may also include sensors for sensing environmental conditions and use the sensed conditions to interact with the media guidance application or any other applications or electronic devices.

BACKGROUND OF THE INVENTION

The invention generally relates to systems and methods for controllingan electronic device. More particularly, the invention relates to acontroller that supports user control of an interactive user equipmentsystem.

An interactive user equipment system allows a user to access informationavailable on one or more electronic devices connected to an interactiveuser equipment system. In particular, a media guidance application,which is typically located at a user set-top box, allows a user tonavigate through a wide variety of media content accessible by the userequipment system.

Typically, a user interacts with a media guidance application via a userinput device, such as a remote controller. However, remote controllersinclude numerous push-down buttons with each dedicated to control onefeature of the interactive user application. For example, a conventionalremote controller may have buttons dedicated to pause an on-demand show,increase/decrease volume, increment/decrement a channel, turn the deviceon/off, mute, etc.

A typical remote controller for controlling an electronic device, suchas a television system or cable set-top box, often has a large number ofbuttons, many of which are rarely used by a viewer. Therefore, thereexists a need for a controller that more efficiently supports a user'scontrol needs.

As existing remote controllers typically have complex buttonarrangements where users often find it difficult to remember what eachof the buttons controls, there also exists a need for a more intuitiveand simple remote controller system that enables a user to control oneor more operations of an electronic device.

Furthermore, existing remote controllers are often simple input devicesnot capable of anticipating certain user behavior. Accordingly, therealso exists a need for a controller capable of anticipating certain usercontrol inputs.

Finally, existing electronic device controllers, such as typical remotecontrollers, are stand-alone devices that often require a user to ceaseperforming a particular activity in order to operate the remotecontroller. Accordingly, there exists a need for a controller that canenable a user to perform more than one activity, such as controlling theoperation of an electronic device and performing another activityconcurrently.

SUMMARY OF THE INVENTION

The invention, in various embodiments, addresses deficiencies in theprior art by providing systems, methods, and devices for controlling anelectronic device based on a user's interactions with another item orobject. The systems and devices may be configured to detect a user'sinteractions with a number of items commonly found in various settingssuch as a user's home or office. Such items may include a tool, utensil,household item, instrument, appliance and the like. A user'sinteractions with an item may be configured to control a plurality ofdevices such as a television equipment system, a phone, a stove, acomputer, etc. The present application, in the following description,refers to systems and methods directed to controlling the operation ofan electronic device by monitoring a user's interactions with a beveragecontainer.

For the beverage container example, an interface may be employed tomonitor various conditions of the beverage container, such as itsposition, movement, weight, temperature, or whether it emanates one ormore sounds. The user of the beverage container may also interface withan electronic system such as a personal computer (PC) and/or interactiveprogram guide. Thus, certain interactions by the user with the beveragecontainer may be used to manipulate an operation of the electronicdevice. For example, the user may stir the liquid in the container in aclockwise direction to scroll up a list of programs displayed in aprogram guide. The user may stir the liquid in a counter-clockwisedirection to scroll down the list of programs. A user may also tap theliquid container using an object to ‘click’ or ‘select’ an option. Anumber of interactions and/or conditions of the item, in this case thebeverage container, may be monitored and used to control an electronicdevice.

The present application describes, in certain embodiments, an intuitive,simplified, and intelligent controller interface and/or system thatenables a user to perform certain everyday manipulations of an existingitem while also enabling the user to control an operation of anelectronic device.

In one aspect, a remote control apparatus for controlling an electronicdevice is provided. The remote control apparatus may comprise aplatform, a stirring rod, and a controller. The platform may be used tosupport a liquid container. The stirring rod may be used to allow a userto stir a liquid in the liquid container. The controller may include atleast one sensor for sensing a condition of at least one of the stirringrod and the container. The controller may also include a communicationsinterface for sending control data to the electronic device.Furthermore, the controller may include a processor that may communicatewith a sensor and the communications interface. The processor may beconfigured to receive sensor data from the sensor, process the sensordata into the control data, and send the control data to thecommunications interface.

In one configuration, the platform includes a portion of the controllerand a coaster. The platform may include a top surface in communicationswith the at least one sensor. The at least one sensor may include one ofa reed relay, magnetic sensor, hall effect sensor, acoustic sensor, apressure sensor, a weight sensor, an accelerometer, a proximity sensor,an optical sensor, an temperature sensor, and a location sensor. Thecontrol data, as processed by the processor for controlling an operationof the electronic device, may be based on pressure data, acoustic data,position data, location, movement data, weight data, volume data, and/ororientation data associated with at least one of the container and thestirring rod. The communications interface may include a wirelessinterface and/or a wired interface. The wireless interface may includean infrared interface. The sensor may include a microphone for detectinga sound generated by a user contacting the stirring rod with anotherobject. The container may include a cup and the sensor may be configuredto sense the amount of liquid in the cup. The control data as describedabove may include information based on the amount of liquid in the cup.

In another aspect, a user interface system for controlling an electronicdevice may comprise a sensor for sensing a user's interactions with abeverage container and a processor for converting the user'sinteractions into control information for controlling an operation ofthe electronic device. The electronic device may include an interactiveprogram guide. In one configuration, a portion of the user interfacesystem may be included in the electronic device. In anotherconfiguration, the user interface system may be located remotely fromand in communication with the electronic device. The user interfacesystem may communicate with the electronic device wirelessly. A user'sinteractions as sensed by the sensor, may include at least one drinkingfrom the container, lifting the container, stirring the beverageclockwise, stirring the beverage counter-clockwise, tapping thecontainer, tapping the container with a stirring rod, the temperature ofthe beverage, amount of beverage in the container, the weight of thecontainer, and a change in a condition of the container. Each of theuser's interactions may be associated with a selected operation of theelectronic device such that the electronic device operation is inresponse to each of the user's interactions. The platform may include asensor and be configured to support the beverage container. The platformmay further include a coaster.

In a further respect, an interactive program guide system may comprise auser equipment device configured for receiving programs and programguide information and for receiving user control information. The systemmay further comprise a display for displaying the program guideinformation and a first remote controller. The first remote controllermay include at least one sensor for sensing a user's interactions with abeverage container, and a processor for generating the user controlinformation in response to the user's interactions. The first remotecontroller may further include a communications interface for sendingthe user control information to the user equipment device. In oneconfiguration, the interactive program guide system may further comprisea second remote controller for receiving user inputs via a userinterface and may send user control information to the user equipmentdevice. The first remote controller may further include a platform forsupporting the liquid container and a stirring rod for stirring a liquidin the beverage container.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects and advantages of the invention will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which like referencecharacters refer to like parts throughout, and in which:

FIGS. 1 and 2 show illustrative display screens that may be used toprovide media guidance application listings in accordance with oneembodiment of the invention;

FIG. 3 shows an illustrative user equipment device in accordance withone embodiment of the invention;

FIG. 4 is a simplified diagram of an illustrative interactive mediasystem in accordance with one embodiment of the invention;

FIG. 5 shows a view of a conventional remote controller;

FIG. 6 shows an illustrative controller system according to oneembodiment of the invention;

FIG. 7 is a circuit diagram of a controller system according to anillustrative embodiment of the invention;

FIG. 8 is a functional block diagram illustrating one or more remotecontrollers in communications with an interactive user equipmentaccording to one embodiment of the invention;

FIG. 9 shows a top down view of the surface of a controller system inaccordance with an embodiment of the invention;

FIG. 10 shows an illustrative controller system according to anembodiment of the invention;

FIG. 11 shows an illustrative controller system according to anembodiment of the invention;

FIG. 12 shows a flow diagram of a method for controlling an electronicdevice using a controller system according to an illustrative embodimentof the invention;

FIG. 13 shows a flow diagram of another method for controlling anelectronic device using a controller system according to an illustrativeembodiment of the invention; and

FIG. 14 shows a third flow diagram of a further method for controllingan electronic device using a controller system according to anillustrative embodiment of the invention.

DETAILED DESCRIPTION OF EMBODIMENTS

The invention, in various embodiments, addresses deficiencies in theprior art by providing systems, methods, and devices for controlling anelectronic device based on a user's interactions with another item orobject. The item may be a tool, utensil, household item, instrument,appliance, device, and the like. Any item that a person typicallymanipulates at home, work, or another setting may be used to manipulatethe operation of an electronic device. By way of example, the presentapplication, in the following description, refers to systems and methodsdirected to controlling the operation of an electronic device bymonitoring a user's interactions with a beverage container. However, itshould be understood by those of ordinary skill that the followingexemplary description may be applied to controlling the operation of awide variety of electronic devices.

The types of electronic devices that can be controlled may include,without limitation, a computer system, a consumer electronic device, anappliance, a communications device, an interactive programming guide, atelevision, a music player, a video player, media recorder, mediaplayer, entertainment system, vehicle, a monitoring system, anenvironmental control system, an information system, an electronicinterface to a second system, and the like, including an applicationrunning on any one of the electronic devices. The types of items that auser can manipulate may include, without limitation, a tool, utensil,instrument (musical, writing, etc. . . . ), apparel, and the like. Acup, beverage container, bowl, fork, knife, stirring rod, straw, orspoon may be considered a type of tool or utensil used for eating and/ordrinking.

One type of device and/or application that is readily adaptable toutilizing a controller based on manipulation of an item by a user is aninteractive media guidance application. The amount of media available tousers in any given media delivery system can be substantial.Consequently, many users desire a form of media guidance through aninterface that allows users to efficiently navigate media selections andeasily identify media that they may desire. An application whichprovides such guidance is referred to herein as an interactive mediaguidance application or, sometimes, a media guidance application or aguidance application.

Interactive media guidance applications may take various forms dependingon the media for which they provide guidance. One typical type of mediaguidance application is an interactive television program guide.Interactive television program guides (sometimes referred to aselectronic program guides) are well-known guidance applications that,among other things, allow users to navigate among and locate many typesof media content including conventional television programming (providedvia traditional broadcast, cable, satellite, Internet, or other means),as well as pay-per-view programs, on-demand programs (as invideo-on-demand (VOD) systems), Internet content (e.g., streaming media,downloadable media, Webcasts, etc.), and other types of media or videocontent. Guidance applications also allow users to navigate among andlocate content related to the video content including, for example,video clips, articles, advertisements, chat sessions, games, etc.Guidance applications also allow users to navigate among and locatemultimedia content. The term multimedia is defined herein as media andcontent that utilizes at least two different content forms, such astext, audio, still images, animation, video, and interactivity contentforms. Multimedia content may be recorded and played, displayed oraccessed by information content processing devices, such as computerizedand electronic devices, but can also be part of a live performance. Itshould be understood that the invention embodiments that are discussedin relation to media content are also applicable to other types ofcontent, such as video, audio and/or multimedia.

With the advent of the Internet, mobile computing, and high-speedwireless networks, users are accessing media on personal computers (PCs)and other devices on which they traditionally did not, such as hand-heldcomputers, personal digital assistants (PDAs), mobile telephones, orother mobile devices. On these devices users are able to navigate amongand locate the same media available through a television. Consequently,media guidance is necessary on these devices, as well. The guidanceprovided may be for media content available only through a television,for media content available only through one or more of these devices,or for media content available both through a television and one or moreof these devices. The media guidance applications may be provided ason-line applications (i.e., provided on a web-site), or as stand-aloneapplications or clients on hand-held computers, PDAs, mobile telephones,or other mobile devices. The various devices and platforms that mayimplement media guidance applications are described in more detailbelow.

One of the functions of the media guidance application is to providemedia listings and media information to users. FIGS. 1-2 showillustrative display screens that may be used to provide media guidance,and in particular media listings. The display screens shown in FIGS. 1-2and 5-7 may be implemented on any suitable device or platform. While thedisplays of FIGS. 1-2 and 5-7 are illustrated as full screen displays,they may also be fully or partially overlaid over media content beingdisplayed.

A user may indicate a desire to access media information by selecting aselectable option provided in a display screen (e.g., a menu option, alistings option, an icon, a hyperlink, etc.) or pressing a dedicatedbutton (e.g., a GUIDE button) on a remote control or other user inputinterface or device. In response to the user's indication, the mediaguidance application may provide a display screen with media informationorganized in one of several ways, such as by time and channel in a grid,by time, by channel, by media type, by category (e.g., movies, sports,news, children, or other categories of programming), or otherpredefined, user-defined, or other organization criteria.

FIG. 1 shows illustrative grid program listings display 100 arranged bytime and channel that also enables access to different types of mediacontent in a single display. Display 100 may include grid 102 with: (1)a column of channel/media type identifiers 104, where each channel/mediatype identifier (which is a cell in the column) identifies a differentchannel or media type available; and (2) a row of time identifiers 106,where each time identifier (which is a cell in the row) identifies atime block of programming. Grid 102 also includes cells of programlistings, such as program listing 108, where each listing provides thetitle of the program provided on the listing's associated channel andtime. With a user input device, a user can select program listings bymoving highlight region 110. Information relating to the program listingselected by highlight region 110 may be provided in program informationregion 112. Region 112 may include, for example, the program title, theprogram description, the time the program is provided (if applicable),the channel the program is on (if applicable), the program's rating, andother desired information.

In addition to providing access to linear programming provided accordingto a schedule, the media guidance application also provides access tonon-linear programming which is not provided according to a schedule.Non-linear programming may include content from different media sourcesincluding on-demand media content (e.g., VOD), Internet content (e.g.,streaming media, downloadable media, etc.), locally stored media content(e.g., video content stored on a digital video recorder (DVR), digitalvideo disc (DVD), video cassette, compact disc (CD), etc.), or othertime-insensitive media content. On-demand content may include bothmovies and original media content provided by a particular mediaprovider (e.g., HBO On Demand providing “The Sopranos” and “Curb YourEnthusiasm”). HBO ON DEMAND is a service mark owned by Time WarnerCompany L. P. et al. and THE SOPRANOS and CURB YOUR ENTHUSIASM aretrademarks owned by the Home Box Office, Inc. Internet content mayinclude web events, such as a chat session or Webcast, or contentavailable on-demand as streaming media or downloadable media through anInternet web site or other Internet access (e.g. FTP).

Grid 102 may provide listings for non-linear programming includingon-demand listing 114, recorded media listing 116, and Internet contentlisting 118. A display combining listings for content from differenttypes of media sources is sometimes referred to as a “mixed-media”display. The various permutations of the types of listings that may bedisplayed that are different than display 100 may be based on userselection or guidance application definition (e.g., a display of onlyrecorded and broadcast listings, only on-demand and broadcast listings,etc.). As illustrated, listings 114, 116, and 118 are shown as spanningthe entire time block displayed in grid 102 to indicate that selectionof these listings may provide access to a display dedicated to on-demandlistings, recorded listings, or Internet listings, respectively. Inother embodiments, listings for these media types may be includeddirectly in grid 102. Additional listings may be displayed in responseto the user selecting one of the navigational icons 120. (Pressing anarrow key on a user input device may affect the display in a similarmanner as selecting navigational icons 120.)

Display 100 may also include video region 122, advertisement 124, andoptions region 126. Video region 122 may allow the user to view and/orpreview programs that are currently available, will be available, orwere available to the user. The content of video region 122 maycorrespond to, or be independent from, one of the listings displayed ingrid 102. Grid displays including a video region are sometimes referredto as picture-in-guide (PIG) displays. PIG displays and theirfunctionalities are described in greater detail in Satterfield et al.U.S. Pat. No. 6,564,378, issued May 13, 2003 and Yuen et al. U.S. Pat.No. 6,239,794, issued May 29, 2001, which are hereby incorporated byreference herein in their entireties. PIG displays may be included inother media guidance application display screens of the presentinvention.

Advertisement 124 may provide an advertisement for media content that,depending on a viewer's access rights (e.g., for subscriptionprogramming), is currently available for viewing, will be available forviewing in the future, or may never become available for viewing, andmay correspond to or be unrelated to one or more of the media listingsin grid 102. Advertisement 124 may also be for products or servicesrelated or unrelated to the media content displayed in grid 102.Advertisement 124 may be selectable and provide further informationabout media content, provide information about a product or a service,enable purchasing of media content, a product, or a service, providemedia content relating to the advertisement, etc. Advertisement 124 maybe targeted based on a user's profile/preferences, monitored useractivity, the type of display provided, or on other suitable targetedadvertisement bases.

While advertisement 124 is shown as rectangular or banner shaped,advertisements may be provided in any suitable size, shape, and locationin a guidance application display. For example, advertisement 124 may beprovided as a rectangular shape that is horizontally adjacent to grid102. This is sometimes referred to as a panel advertisement. Inaddition, advertisements may be overlaid over media content or aguidance application display or embedded within a display.Advertisements may also include text, images, rotating images, videoclips, or other types of media content. Advertisements may be stored inthe user equipment with the guidance application, in a databaseconnected to the user equipment, in a remote location (includingstreaming media servers), or on other storage means or a combination ofthese locations. Providing advertisements in a media guidanceapplication is discussed in greater detail in, for example, Knudson etal., U.S. Patent Application Publication No. 2003/0110499, filed Jan.17, 2003, Ward, III et al. U.S. Pat. No. 6,756,997, issued Jun. 29,2004, and Schein et al. U.S. Pat. No. 6,388,714, issued May 14, 2002,which are hereby incorporated by reference herein in their entireties.It will be appreciated that advertisements may be included in othermedia guidance application display screens of the present invention.

Options region 126 may allow the user to access different types of mediacontent, media guidance application displays, and/or media guidanceapplication features. Options region 126 may be part of display 100 (andother display screens of the present invention), or may be invoked by auser by selecting an on-screen option or pressing a dedicated orassignable button on a user input device. The selectable options withinoptions region 126 may concern features related to program listings ingrid 102 or may include options available from a main menu display.Features related to program listings may include searching for other airtimes or ways of receiving a program, recording a program, enablingseries recording of a program, setting program and/or channel as afavorite, purchasing a program, or other features. Options availablefrom a main menu display may include search options, VOD options,parental control options, access to various types of listing displays,subscribe to a premium service, edit a user's profile, access a browseoverlay, or other options.

The media guidance application may be personalized based on a user'spreferences. A personalized media guidance application allows a user tocustomize displays and features to create a personalized “experience”with the media guidance application. This personalized experience may becreated by allowing a user to input these customizations and/or by themedia guidance application monitoring user activity to determine varioususer preferences. Users may access their personalized guidanceapplication by logging in or otherwise identifying themselves to theguidance application. Customization of the media guidance applicationmay be made in accordance with a user profile. The customizations mayinclude varying presentation schemes (e.g., color scheme of displays,font size of text, etc.), aspects of media content listings displayed(e.g., only HDTV programming, user-specified broadcast channels based onfavorite channel selections, re-ordering the display of channels,recommended media content, etc.), desired recording features (e.g.,recording or series recordings for particular users, recording quality,etc.), parental control settings, and other desired customizations.

The media guidance application may allow a user to provide user profileinformation or may automatically compile user profile information. Themedia guidance application may, for example, monitor the media the useraccesses and/or other interactions the user may have with the guidanceapplication. Additionally, the media guidance application may obtain allor part of other user profiles that are related to a particular user(e.g., from other web sites on the Internet the user accesses, such aswww.tvguide.com, from other media guidance applications the useraccesses, from other interactive applications the user accesses, from ahandheld device of the user, etc.), and/or obtain information about theuser from other sources that the media guidance application may access.As a result, a user can be provided with a unified guidance applicationexperience across the user's different devices. This type of userexperience is described in greater detail below in connection with FIG.4. Additional personalized media guidance application features aredescribed in greater detail in Ellis et al., U.S. Patent ApplicationPublication No. 2005/0251827, filed Jul. 11, 2005, Boyer et al., U.S.patent application Ser. No. 09/437,304, filed Nov. 9, 1999, and Ellis etal., U.S. Patent Application Publication No. 2002/0174430, filed Feb.21, 2002, which are hereby incorporated by reference herein in theirentireties.

Another display arrangement for providing media guidance is shown inFIG. 2. Video mosaic display 200 includes selectable options 202 formedia content information organized based on media type, genre, and/orother organization criteria. In display 200, television listings option204 is selected, thus providing listings 206, 208, 210, and 212 asbroadcast program listings. Unlike the listings from FIG. 1, thelistings in display 200 are not limited to simple text (e.g., theprogram title) and icons to describe media. Rather, in display 200 thelistings may provide graphical images including cover art, still imagesfrom the media content, video clip previews, live video from the mediacontent, or other types of media that indicate to a user the mediacontent being described by the listing. Each of the graphical listingsmay also be accompanied by text to provide further information about themedia content associated with the listing. For example, listing 208 mayinclude more than one portion, including media portion 214 and textportion 216. Media portion 214 and/or text portion 216 may be selectableto view video in full-screen or to view program listings related to thevideo displayed in media portion 214 (e.g., to view listings for thechannel that the video is displayed on).

The listings in display 200 are of different sizes (i.e., listing 206 islarger than listings 208, 210, and 212), but if desired, all thelistings may be the same size. Listings may be of different sizes orgraphically accentuated to indicate degrees of interest to the user orto emphasize certain content, as desired by the media provider or basedon user preferences.

Various systems and methods for graphically accentuating media listingsare discussed in, for example, Yates, U.S. patent application Ser. No.11/324,202, filed Dec. 29, 2005, which is hereby incorporated byreference herein in its entirety.

Users may access media content and the media guidance application (andits display screens described above and below) from one or more of theiruser equipment devices. FIG. 3 shows a generalized embodiment ofillustrative user equipment device 300. More specific implementations ofuser equipment devices are discussed below in connection with FIG. 4.User equipment device 300 may receive media content and data viainput/output (hereinafter “I/O”) path 302. I/O path 302 may providemedia content (e.g., broadcast programming, on-demand programming,Internet content, and other video or audio) and data to controlcircuitry 304, which includes processing circuitry 306 and storage 308.Control circuitry 304 may be used to send and receive commands,requests, and other suitable data using I/O path 302. I/O path 302 mayconnect control circuitry 304 (and specifically processing circuitry306) to one or more communications paths (described below). I/Ofunctions may be provided by one or more of these communications paths,but are shown as a single path in FIG. 3 to avoid overcomplicating thedrawing.

Control circuitry 304 may be based on any suitable processing circuitry306 such as processing circuitry based on one or more microprocessors,microcontrollers, digital signal processors, programmable logic devices,etc. In some embodiments, control circuitry 304 executes instructionsfor a media guidance application stored in memory (i.e., storage 308).In client-server based embodiments, control circuitry 304 may includecommunications circuitry suitable for communicating with a guidanceapplication server or other networks or servers. Communicationscircuitry may include a cable modem, an integrated services digitalnetwork (ISDN) modem, a digital subscriber line (DSL) modem, a telephonemodem, or a wireless modem for communications with other equipment. Suchcommunications may involve the Internet or any other suitablecommunications networks or paths (which is described in more detail inconnection with FIG. 4). In addition, communications circuitry mayinclude circuitry that enables peer-to-peer communication of userequipment devices, or communication of user equipment devices inlocations remote from each other (described in more detail below).

Memory (e.g., random-access memory, read-only memory, or any othersuitable memory), hard drives, optical drives, or any other suitablefixed or removable storage devices (e.g., DVD recorder, CD recorder,video cassette recorder, or other suitable recording device) may beprovided as storage 308 that is part of control circuitry 304. Storage308 may include one or more of the above types of storage devices. Forexample, user equipment device 300 may include a hard drive for a DVR(sometimes called a personal video recorder, or PVR) and a DVD recorderas a secondary storage device. Storage 308 may be used to store varioustypes of media described herein and guidance application data, includingprogram information, guidance application settings, user preferences orprofile information, or other data used in operating the guidanceapplication. Nonvolatile memory may also be used (e.g., to launch aboot-up routine and other instructions).

Control circuitry 304 may include video generating circuitry and tuningcircuitry, such as one or more analog tuners, one or more MPEG-2decoders or other digital decoding circuitry, high-definition tuners, orany other suitable tuning or video circuits or combinations of suchcircuits. Encoding circuitry (e.g., for converting over-the-air, analog,or digital signals to MPEG signals for storage) may also be provided.Control circuitry 304 may also include scaler circuitry forup-converting and down-converting media into the preferred output formatof the user equipment 300. Circuitry 304 may also includedigital-to-analog converter circuitry and analog-to-digital convertercircuitry for converting between digital and analog signals. The tuningand encoding circuitry may be used by the user equipment to receive andto display, to play, or to record media content. The tuning and encodingcircuitry may also be used to receive guidance data. The circuitrydescribed herein, including for example, the tuning, video generating,encoding, decoding, scaler, and analog/digital circuitry, may beimplemented using software running on one or more general purpose orspecialized processors. Multiple tuners may be provided to handlesimultaneous tuning functions (e.g., watch and record functions,picture-in-picture (PIP) functions, multiple-tuner recording, etc.). Ifstorage 308 is provided as a separate device from user equipment 300,the tuning and encoding circuitry (including multiple tuners) may beassociated with storage 308.

A user may control the control circuitry 304 using user input interface310. User input interface 310 may be any suitable user interface, suchas a remote control, mouse, trackball, keypad, keyboard, touch screen,touch pad, stylus input, joystick, voice recognition interface, or otheruser input interfaces. Display 312 may be provided as a stand-alonedevice or integrated with other elements of user equipment device 300.Display 312 may be one or more of a monitor, a television, a liquidcrystal display (LCD) for a mobile device, or any other suitableequipment for displaying visual images. In some embodiments, display 312may be HDTV-capable. Speakers 314 may be provided as integrated withother elements of user equipment device 300 or may be stand-alone units.The audio component of videos and other media content displayed ondisplay 312 may be played through speakers 314. In some embodiments, theaudio may be distributed to a receiver (not shown), which processes andoutputs the audio via speakers 314.

The guidance application may be implemented using any suitablearchitecture. For example, it may be a stand-alone application whollyimplemented on user equipment device 300. In such an approach,instructions of the application are stored locally, and data for use bythe application is downloaded on a periodic basis (e.g., from the VBI ofa television channel, from an out-of-band feed, or using anothersuitable approach). In another embodiment, the media guidanceapplication is a client-server based application. Data for use by athick or thin client implemented on user equipment device 300 isretrieved on-demand by issuing requests to a server remote to the userequipment device 300. In one example of a client-server based guidanceapplication, control circuitry 304 runs a web browser that interpretsweb pages provided by a remote server.

In yet other embodiments, the media guidance application is downloadedand interpreted or otherwise run by an interpreter or virtual machine(run by control circuitry 304). In some embodiments, the guidanceapplication may be encoded in the ETV Binary Interchange Format (EBIF),received by control circuitry 304 as part of a suitable feed, andinterpreted by a user agent running on control circuitry 304. Forexample, the guidance application may be a EBIF widget. In otherembodiments, the guidance application may be defined by a series ofJAVA-based files that are received and run by a local virtual machine orother suitable middleware executed by control circuitry 304. In some ofsuch embodiments (e.g., those employing MPEG-2 or other digital mediaencoding schemes), the guidance application may be, for example, encodedand transmitted in an MPEG-2 object carousel with the MPEG audio andvideo packets of a program.

User equipment device 300 of FIG. 3 can be implemented in system 400 ofFIG. 4 as user television equipment 402, user computer equipment 404,wireless user communications device 406, or any other type of userequipment suitable for accessing media, such as a non-portable gamingmachine. For simplicity, these devices may be referred to hereincollectively as user equipment or user equipment devices. User equipmentdevices, on which a media guidance application is implemented, mayfunction as a standalone device or may be part of a network of devices.Various network configurations of devices may be implemented and arediscussed in more detail below.

User television equipment 402 may include a set-top box, an integratedreceiver decoder (IRD) for handling satellite television, a televisionset, a digital storage device, a DVD recorder, a video-cassette recorder(VCR), a local media server, or other user television equipment. One ormore of these devices may be integrated to be a single device, ifdesired. User computer equipment 404 may include a PC, a laptop, atablet, a WebTV box, a personal computer television (PC/TV), a PC mediaserver, a PC media center, or other user computer equipment. WEBTV is atrademark owned by Microsoft Corp. Wireless user communications device406 may include PDAs, a mobile telephone, a portable video player, aportable music player, a portable gaming machine, or other wirelessdevices.

It should be noted that with the advent of television tuner cards forPC's, WebTV, and the integration of video into other user equipmentdevices, the lines have become blurred when trying to classify a deviceas one of the above devices. In fact, each of user television equipment402, user computer equipment 404, and wireless user communicationsdevice 406 may utilize at least some of the system features describedabove in connection with FIG. 3 and, as a result, include flexibilitywith respect to the type of media content available on the device. Forexample, user television equipment 402 may be Internet-enabled allowingfor access to Internet content, while user computer equipment 404 mayinclude a tuner allowing for access to television programming. The mediaguidance application may also have the same layout on the variousdifferent types of user equipment or may be tailored to the displaycapabilities of the user equipment. For example, on user computerequipment, the guidance application may be provided as a web siteaccessed by a web browser. In another example, the guidance applicationmay be scaled down for wireless user communications devices.

In system 400, there is typically more than one of each type of userequipment device but only one of each is shown in FIG. 4 to avoidovercomplicating the drawing. In addition, each user may utilize morethan one type of user equipment device (e.g., a user may have atelevision set and a computer) and also more than one of each type ofuser equipment device (e.g., a user may have a PDA and a mobiletelephone and/or multiple television sets).

The user may also set various settings to maintain consistent mediaguidance application settings across in-home devices and remote devices.Settings include those described herein, as well as channel and programfavorites, programming preferences that the guidance applicationutilizes to make programming recommendations, display preferences, andother desirable guidance settings. For example, if a user sets a channelas a favorite on, for example, the web site www.tvguide.com on theirpersonal computer at their office, the same channel would appear as afavorite on the user's in-home devices (e.g., user television equipmentand user computer equipment) as well as the user's mobile devices, ifdesired. Therefore, changes made on one user equipment device can changethe guidance experience on another user equipment device, regardless ofwhether they are the same or a different type of user equipment device.In addition, the changes made may be based on settings input by a user,as well as user activity monitored by the guidance application.

The user equipment devices may be coupled to communications network 414.Namely, user television equipment 402, user computer equipment 404, andwireless user communications device 406 are coupled to communicationsnetwork 414 via communications paths 408, 410, and 412, respectively.Communications network 414 may be one or more networks including theInternet, a mobile phone network, mobile device (e.g., Blackberry)network, cable network, public switched telephone network, or othertypes of communications network or combinations of communicationsnetworks. BLACKBERRY is a service mark owned by Research In MotionLimited Corp. Paths 408, 410, and 412 may separately or together includeone or more communications paths, such as, a satellite path, afiber-optic path, a cable path, a path that supports Internetcommunications (e.g., IPTV), free-space connections (e.g., for broadcastor other wireless signals), or any other suitable wired or wirelesscommunications path or combination of such paths. Path 412 is drawn withdotted lines to indicate that in the exemplary embodiment shown in FIG.4 it is a wireless path and paths 408 and 410 are drawn as solid linesto indicate they are wired paths (although these paths may be wirelesspaths, if desired). Communications with the user equipment devices maybe provided by one or more of these communications paths, but are shownas a single path in FIG. 4 to avoid overcomplicating the drawing.

Although communications paths are not drawn between user equipmentdevices, these devices may communicate directly with each other viacommunication paths, such as those described above in connection withpaths 408, 410, and 412, as well other short-range point-to-pointcommunication paths, such as USB cables, IEEE 1394 cables, wirelesspaths (e.g., Bluetooth, infrared, IEEE 802-11x, etc.), or othershort-range communication via wired or wireless paths. BLUETOOTH is acertification mark owned by Bluetooth SIG, INC. The user equipmentdevices may also communicate with each other directly through anindirect path via communications network 414.

System 400 includes media content source 416 and media guidance datasource 418 coupled to communications network 414 via communication paths420 and 422, respectively. Paths 420 and 422 may include any of thecommunication paths described above in connection with paths 408, 410,and 412. Communications with the media content source 416 and mediaguidance data source 418 may be exchanged over one or morecommunications paths, but are shown as a single path in FIG. 4 to avoidovercomplicating the drawing. In addition, there may be more than one ofeach of media content source 416 and media guidance data source 418, butonly one of each is shown in FIG. 4 to avoid overcomplicating thedrawing. (The different types of each of these sources are discussedbelow.) If desired, media content source 416 and media guidance datasource 418 may be integrated as one source device. Althoughcommunications between sources 416 and 418 with user equipment devices402, 404, and 406 are shown as through communications network 414, insome embodiments, sources 416 and 418 may communicate directly with userequipment devices 402, 404, and 406 via communication paths (not shown)such as those described above in connection with paths 408, 410, and412.

Media content source 416 may include one or more types of mediadistribution equipment including a television distribution facility,cable system headend, satellite distribution facility, programmingsources (e.g., television broadcasters, such as NBC, ABC, HBO, etc.),intermediate distribution facilities and/or servers, Internet providers,on-demand media servers, and other media content providers. NBC is atrademark owned by the National Broadcasting Company, Inc., ABC is atrademark owned by the ABC, INC., and HBO is a trademark owned by theHome Box Office, Inc. Media content source 416 may be the originator ofmedia content (e.g., a television broadcaster, a Webcast provider, etc.)or may not be the originator of media content (e.g., an on-demand mediacontent provider, an Internet provider of video content of broadcastprograms for downloading, etc.). Media content source 416 may includecable sources, satellite providers, on-demand providers, Internetproviders, or other providers of media content. Media content source 416may also include a remote media server used to store different types ofmedia content (including video content selected by a user), in alocation remote from any of the user equipment devices. Systems andmethods for remote storage of media content, and providing remotelystored media content to user equipment are discussed in greater detailin connection with Ellis et al., U.S. patent application Ser. No.09/332,244, filed Jun. 11, 1999, which is hereby incorporated byreference herein in its entirety.

Media guidance data source 418 may provide media guidance data, such asmedia listings, media-related information (e.g., broadcast times,broadcast channels, media titles, media descriptions, ratingsinformation (e.g., parental control ratings, critic's ratings, etc.),genre or category information, actor information, logo data forbroadcasters' or providers' logos, etc.), media format (e.g., standarddefinition, high definition, etc.), advertisement information (e.g.,text, images, media clips, etc.), on-demand information, and any othertype of guidance data that is helpful for a user to navigate among andlocate desired media selections.

Media guidance application data may be provided to the user equipmentdevices using any suitable approach. In some embodiments, the guidanceapplication may be a stand-alone interactive television program guidethat receives program guide data via a data feed (e.g., a continuousfeed, trickle feed, or data in the vertical blanking interval of achannel). Program schedule data and other guidance data may be providedto the user equipment on a television channel sideband, in the verticalblanking interval of a television channel, using an in-band digitalsignal, using an out-of-band digital signal, or by any other suitabledata transmission technique. Program schedule data and other guidancedata may be provided to user equipment on multiple analog or digitaltelevision channels. Program schedule data and other guidance data maybe provided to the user equipment with any suitable frequency (e.g.,continuously, daily, a user-specified period of time, a system-specifiedperiod of time, in response to a request from user equipment, etc.). Insome approaches, guidance data from media guidance data source 418 maybe provided to users' equipment using a client-server approach. Forexample, a guidance application client residing on the user's equipmentmay initiate sessions with source 418 to obtain guidance data whenneeded. Media guidance data source 418 may provide user equipmentdevices 402, 404, and 406 the media guidance application itself orsoftware updates for the media guidance application.

Media guidance applications may be, for example, stand-aloneapplications implemented on user equipment devices. In otherembodiments, media guidance applications may be client-serverapplications where only the client resides on the user equipment device.For example, media guidance applications may be implemented partially asa client application on control circuitry 304 of user equipment device300 and partially on a remote server as a server application (e.g.,media guidance data source 418). The guidance application displays maybe generated by the media guidance data source 418 and transmitted tothe user equipment devices. The media guidance data source 418 may alsotransmit data for storage on the user equipment, which then generatesthe guidance application displays based on instructions processed bycontrol circuitry.

Media guidance system 400 is intended to illustrate a number ofapproaches, or network configurations, by which user equipment devicesand sources of media content and guidance data may communicate with eachother for the purpose of accessing media and providing media guidance.The present invention may be applied in any one or a subset of theseapproaches, or in a system employing other approaches for deliveringmedia and providing media guidance. The following three approachesprovide specific illustrations of the generalized example of FIG. 4.

In one approach, user equipment devices may communicate with each otherwithin a home network. User equipment devices can communicate with eachother directly via short-range point-to-point communication schemesdescribe above, via indirect paths through a hub or other similar deviceprovided on a home network, or via communications network 414. Each ofthe multiple individuals in a single home may operate different userequipment devices on the home network. As a result, it may be desirablefor various media guidance information or settings to be communicatedbetween the different user equipment devices.

For example, it may be desirable for users to maintain consistent mediaguidance application settings on different user equipment devices withina home network, as described in greater detail in Ellis et al., U.S.patent application Ser. No. 11/179,410, filed Jul. 11, 2005. Differenttypes of user equipment devices in a home network may also communicatewith each other to transmit media content. For example, a user maytransmit media content from user computer equipment to a portable videoplayer or portable music player.

In a second approach, users may have multiple types of user equipment bywhich they access media content and obtain media guidance. For example,some users may have home networks that are accessed by in-home andmobile devices. Users may control in-home devices via a media guidanceapplication implemented on a remote device. For example, users mayaccess an online media guidance application on a website via a personalcomputer at their office, or a mobile device such as a PDA orweb-enabled mobile telephone. The user may set various settings (e.g.,recordings, reminders, or other settings) on the online guidanceapplication to control the user's in-home equipment. The online guidemay control the user's equipment directly, or by communicating with amedia guidance application on the user's in-home equipment. Varioussystems and methods for user equipment devices communicating, where theuser equipment devices are in locations remote from each other, isdiscussed in, for example, Ellis et al., U.S. patent application Ser.No. 10/927,814, filed Aug. 26, 2004, which is hereby incorporated byreference herein in its entirety.

In a third approach, users of user equipment devices inside and outsidea home can use their media guidance application to communicate directlywith media content source 416 to access media content. Specifically,within a home, users of user television equipment 404 and user computerequipment 406 may access the media guidance application to navigateamong and locate desirable media content. Users may also access themedia guidance application outside of the home using wireless usercommunications devices 406 to navigate among and locate desirable mediacontent.

It will be appreciated that while the discussion of media content hasfocused on video content, the principles of media guidance can beapplied to other types of media content, such as music, images, etc.

FIG. 5 shows a view of conventional remote controller 500. The remotecontroller 500 includes an on/off button 502, a cable button 504, aguide button 506, an info. button 508, a channel button 510, a volumebutton 512, a set button 514, a keypad 516, a navigation button 518, afast-forward button 520, a rewind button 522, a floating button 524, apause button 526, and an infrared communication interface (not shown).

In operation, a user may press the on/off button 502 to turn anelectronic device on or off. If the conventional remote controller 500is used to control a cable set-top box, the cable button 504 may be usedto turn on/off the set-top box connected usually to a television system.Other buttons, such as the guide button 506 and the info. button 508,may allow a user to interact with a media guide according to thedescriptions for FIGS. 1-4. A user may further increment or decrement achannel using the channel button 510. Similarly, a user may change thevolume by interacting with the volume button 512.

The set button 514 may be used in various ways. In some situations, theset button 514 may allow a user to implement a highlighted program. Inother situations, the set button 514 may allow a user to configuresettings of an electronic device through interacting with a userinterface application such as the media guidance application. Thenavigation button 518 allows a user to move a highlight region 110 on auser interface in two dimensions by moving the highlight region 110up/down or left/right. The fast forward and rewind buttons 520 and 522,respectively, may allow a user to fast forward or rewind a recordedshow, an on-demand show, or any media content.

The floating button 524 may be a button reserved for a user to programadditional functionalities into the conventional remote controller 500.In some embodiments, the remote controller 500 may be configured to workcooperatively with another remote controller system, such as the remotecontroller system as illustrated in FIGS. 6, 8-11. Upon receiving a userpressing the floating button 524, the user may be allowed to access alook-up table of commands currently registered with the electronicdevice and the conventional remote controller 500. A user may be allowedto use buttons on the remote controller 500, such as the keypad 516, toinput any user defined commands for programming the look-up table or anyother aspects of the user interface application for controlling theelectronic device. As an example, a user may wish to add a binary stringthat may correspond to either a user selected command that theelectronic device may have configured to execute or, alternatively, anew command created by the user.

In some embodiments, in addition to having the remote controller 500, auser can also interact with an additional remote controller system suchas the remote controller system 600 for controlling the same electronicdevice. Both the remote controller system 600 and the conventionalremote controller may control the same operations associated with adevice. Alternatively, the controller 500 and the system 600 may eachcontain additional functionalities not shared with each other.Accordingly, because a user can switch between the controller 500 andthe system 600, the application may be configured to communicate withthe controller 500 and/or the system 600.

FIG. 6 shows an illustrative controller system 600 according to anembodiment of the invention. The controller system 600 includes a liquidcontainer 602, a platform 604, and a stirring rod 608. The stirring rod608 includes a magnet 722 and/or a magnet tip. The liquid container 602can hold various liquids and may be made of various materials, such asglass, aluminum, wood, porcelain, etc. The platform 604 includesinternal circuitry and sensors for detecting a condition of thecontainer 602 and/or rod 608, or a user interaction with the controllersystem 600. The platform 604 may be made of and/or include variousmaterials, such as, without limitations, glass, polymers, rubber, cloth,metal, and the like.

Functionally, the platform 604 supports the liquid container 602. Theplatform 604 may include a stirring rod 608 holder for holding thestirring rod 608 when not in use. The platform 604 may also supportadditional liquid containers and/or stirring rods (not shown).

In operation, a user may stir the liquid in the liquid container 602 tocontrol one or more operations of an electronic device connected,through a communications interface, to the controller system 600. Thecontroller 600 may sense, through one or more sensors, a user stirringthe liquid in a clockwise direction and use the sensed interaction as auser input to control an operation of an electronic device. In oneembodiment, the electronic device includes a set top box and/ortelevision running a media guidance application.

Stirring a liquid in the liquid container 602 may correspond to variousdifferent kinds of commands, depending on the configuration. In someembodiments, a user can move the highlighted region 110 by stirring thestirring rod 608 clockwise. To access or select a program under thehighlighted region 110, the user may tap the liquid container 602. Theuser may tap the container 602 using the rod 608, another item, and/ortheir finger. In some embodiments, the sound of tapping the liquidcontainer 602 corresponds to a user selection action, like a ‘click’using a computer mouse or click wheel. Similarly, a user may stir thestirring rod 608 counter-clockwise to fast forward through a programlisting in time.

In other embodiments, a user can stir the liquid in the container 602 ina counter-clockwise direction to turn a television on. Similarly, thetelevision may be turned off upon detecting that a user is stirring theliquid in a counterclockwise direction. Additionally, stirring theliquid in one direction multiple times may indicate a different userinput and would, therefore, control the electronic device to implement adifferent function, such as to access a media guide or to accessadditional information of a television show.

A user may tap the stirring rod 608 or another item against variousobjects, such as the liquid container. Sounds generated from tapping maybe used to control an operation of an electronic device. The tappingsounds may be sensed by an acoustic sensor 714 of the remote controllersystem 600. Characteristics of the sound that may be detected include:frequency, pitch, and/or dynamics such that tapping different objects(using different items) can be detected. Each distinct sound profile maycontrol a different operation of an electronic device. In someembodiments, the acoustic sensor 714 of the platform 604 can detect theacoustical shockwaves generated by a user tapping the stirring rod 608against the liquid container 602.

The controller 600 may be configured to differentiate among variousacoustic waves or sounds. For example, when the liquid container 602 isfilled with liquid, tapping the stirring rod 608 against the liquidcontainer 602 may generate a sound profile different from soundgenerated by tapping the liquid container 602 when it is without anyliquid. Therefore, each of the two sound profiles may correspond to arespective user input capable of controlling the electronic device to,for example, turn on the television when the liquid container 602 isfull and turn the television off when the liquid container 602 is empty.Similarly, a user may mute a television by tapping the liquid container602 twice, regardless of whether it is filled or empty. The same userinteraction may also be programmed to pause the television system. Itshould be appreciated that a user can control a plurality of operationsof an electronic device by interacting with the controller system 600and its components in various ways without limitations.

The controller system 600 may further be configured to differentiateamong various source profiles generated by and/or received from multiplesources. For example, when a door bell rings, the user typically has toanswer the door. Therefore, the remote controller 600 may anticipate auser going away from watching a television program to answer the doorand would, therefore, automatically pause a show the user is watching.Alternatively, the remote controller system 600 may automatically mutethe television, or perform any other operations depending the specificsettings a user wishes to have on the remote controller system 600.Other sound sources that may generate sounds proceeding predictable userinputs may include: a telephone ring, a kitchen timer, a wake-up alarm,a fire alarm, a pager, etc.

The controller system 600 may be pre-configured with settings that mayinterpret a certain user interaction as a particular user input forcontrolling an operation of an electronic device. However, a user mayalso have the option to program the remote controller system 600 suchthat a certain user interactions will be used to control a specificoperation as selected or programmed by the user. For example, while thedefault setting of the controller system 600 may be to pause atelevision show and/or on-demand program when sensing a user tapping theliquid container twice or a door bell ringing, the user may, instead,program the remote controller 600 to mute the television show audioinstead.

In certain embodiments, the system 600 includes a memory and/or datastore for storing interface control information. For example, the datastore may include a database and/or list of user interactions with anitem (e.g., the container) and/or detected conditions of an item (e.g.,the amount of liquid in a cup). The database and/or list may associateeach of the user interactions and/or item conditions or changes in anitem's condition with one or more operations of an electronic deviceincluding, for example, an interactive media guidance applicationrunning on a set-top box. The data store may be integrated with thesystem 600, integrated with the electronic device, and/or located at aremote location. One such remote location may be a distribution facilityof a media provider.

The user may be given the option to program the controller 600 to usethe same user interactions for controlling different operations ofmultiple devices simultaneously. For example, tapping the stirring rod608 against the liquid container 602 may select a media program while atthe same time roll down a curtain to create a better viewingenvironment. Similarly, if a door bell is ringing, the remote controllersystem 600 may pause the television show and at the same time use theinteraction to ignore an incoming call because the user is probablyanswering the door and will be unable to answer the phone. The remotecontroller system 600 may then, upon receiving the sound of a usershutting the door, automatically resume the program the user waswatching. Evidently, all operations are executed without an explicituser input because the remote controller system 600 is anticipatingpredictable user behaviors that are indicative of user inputs forcontrolling one or more electronic devices. A user may pre-program theremote controller system 600 by recording other sound profiles notinitiated by a user, such as the sound of a door bell, telephone ringtone, etc., so that each sound profile may correspond to a user selectedcommand for controlling an operation of an electronic device.

Although the liquid container 602 may include containers such as a cup,a can, a glass, a mug, a wine glass, a plastic water bottle, and thelike, the liquid container 602 may also include special or custom madecontainer including sensors that may work separately from or in additionto sensors of the platform 604. For example, the liquid container 602may contain one or more sensors to sense the amount of liquid containedin the liquid container. In some embodiments, the sensors of the liquidcontainer 602 may send information about the amount of liquid containedin container 602 to a set-top box through either a wired connection or awireless connection so that certain operations may be implementedautomatically. For example, when the liquid container 602 is or close tobeing empty, the sensed data may be sent to a processor locatedunderneath the platform 604 or remotely at a different device. Theprocessor may then decide to pause the current program being watchedbecause the user will shortly refill the liquid container 602 and,therefore, will not be watching the television program in the meantime.

The liquid container 602 may further contain sensors capable ofidentifying or estimating the content of the liquid. Upon a user'sconsent, such information may be sent to a user equipment system such asa television system so that commercials or advertisements related to theliquid being consumed will be present to the user. For example, if auser is currently watching super bowl and the liquid container 602 hasdetected that the liquid being consumed is beer, the television systemmay automatically present to the user commercials related to beer.Similarly, if the user is currently watching Iron Chef America and isconsuming wine, the television system may present recommendations orcommercials related to wine to a user.

In some embodiments, sensors for sensing the amount of liquids left inthe beverage container may be embedded within the platform 604. Thesensors can be any pressure sensors, weight sensors, heat sensors, andthe like. The platform 604 may further include an array of sensorsand/or sensor arrays mapped throughout the platform to track themovement of the liquid container 602 as controlled by a user. Theplatform 604 may further include a touch screen panel, sensors, andcircuitry. If the platform 604 includes a touch screen, the touch screenmay further allocate areas for icons that a user may interact with bymoving the liquid container 602 to the top of an icon. The platform 604may include a sensor for detecting a vertical movement of the liquidcontainer 602. The container 602 and/or rod 608 may include a sensor,such as, for example, an accelerometer and/or thermometer. If a userdecides to refill the liquid container 602, the platform 604 may detectthe difference between a user picking up the liquid container 602 forconsuming the liquid and picking up the liquid container 602 forrefilling. Therefore, once a sensor has detected that the liquidcontainer 602 has been lifted for either substantial amount of time orhigh in space that is unlikely to be the height of a user's mouthrelative to the platform 604, the platform 604 may use the informationto automatically pause a media program since a user is likely going tobe away from watching the media program.

In operation, various methods may be employed for differentiating oneuser interaction, item manipulation, and/or item condition from another.For example, one implementation may only require the controller system600 to include pressure sensors and/or a clock, counter, or other timesensors. In the situation where a user has gotten up to refill theliquid container 602, the amount of time away may be longer than thetime it takes for a user to consume the liquid. Therefore, coupled withthe pressure sensor data indicating that the liquid container 602 hasbeen lifted from the platform 604, a processor may determine that theliquid container 602 has been taken up for a refill. Additionally, thepressure sensor may measure the weight difference during a measured timeinterval (e.g. pressure 1 at t1 and pressure 2 at t2). To ensureaccuracy, both methods may be incorporated to determine whether a useris about to get a refill. In certain situations, other data, such astime of day, user's previous activity, and/or user preferences, may alsobe utilized and incorporated into the decision-making process.Therefore, the processor 710 of the controller system 600 may utilizeone or more algorithms and/or predictive models to predict theappropriate control input for an electronic device based on prior useractions.

FIG. 7 includes a circuit diagram 700 of the controller system 600according to an illustrative embodiment of the invention. The circuitdiagram 700 includes a stirring rod 608, proximity sensors 704, 706, and708, a processor 710, a communications interface 712, an acoustic sensor714, acoustic amplifier 716, voltage detector 718, shunt resistors 724,and a platform (not shown). A sensor 704-708 may include a reed relay,hall effect sensor/switch, pressure sensor, temperature sensor, magneticsensor, optical sensor, RFID tag, and the like. The processor 710 mayinclude a microprocessor, microcontroller, a state machine, or othercontroller circuitry.

In some embodiments, the processor 710 may include an Atmel AT89S52microcontroller. The communications interface 712 may include a wirelessinterface 720 and may support the Digital Living Network Alliance, DLNA,standards, a wired standard, a wireless standard, and the like. Thecommunications interface 712 may also include a wired interface (notshown). The wireless interface may support any one of a number ofwireless protocols such as, without limitation, Infrared, Radio,Bluetooth, Wi-Fi, and the like. The wired interface may support any oneof a number of network protocols such as, without limitation, USB,Serial, Ethernet, PCI, and the like. The platform 604, although notshown, may be of the type described with respect to FIGS. 6, 9-11. Thestirring rod 608 may include a magnet 722 and/or magnetic tip or any oneof the types of sensors mentioned above.

In operation, a user of an electronic device may employ controllersystem 600 as an interface to effect control of the operation of theelectronic device. The system 600 may include a platform on which theuser places a liquid container 602 holding a beverage that the userconsumes. The user may use a stirring rod 608 to stir the liquid, e.g.,coffee, in the container. The platform 604 may include one or moresensors such as, without limitation, sensors 704, 706, and 708. In oneembodiment, the sensors 704, 706, and 708 include reed relays capable ofsensing magnetic fields induced by the magnet 722 on the tip of thestirring rod 608. Using reed relays 704, 706, and 708, the relativeposition of the magnetic rod may be deduced. It should be noted thatadditional sensors such as the sensors 704-708 may be added to thecontroller system 600 to enhance its sensitivity and accuracy. Anyportion of the system 600 may be integrated with a user equipment 802.For example, one or more sensors, the processor 712, or any othercomponents may be integrated with the user equipment 802.

In one embodiment, in determining that a user is stirring the stirringrod 608 in a clockwise direction, sensor 704 will first sense themagnetic field induced by the magnet 722. Subsequently, sensors 706 and708 will then sense the induced magnetic fields respectively in thatorder as the magnet 722 moves within vicinity of each sensor. Theprocessor 710 may record the sequence of sensors that have detected theinduced magnetic fields. The processor 710 may then determine that thedetected sequence corresponds to a clockwise or counter-clockwisemotion. In certain embodiments, the processor 710 accesses a look-uptable stored in memory located either on board with the processor 710 orat a remote location accessible by the communications interface 712 toidentify the command that corresponds to a clockwise and/orcounter-clockwise motion. For example, stirring the stirring rod 608clockwise may correspond to the command to scroll down on a medialisting as seen on display 100. Such user interaction with the remotecontroller system 600 may be programmed by a user as a user input forcontrolling an electronic device to perform any number of functions oroperations such as, without limitation, to pause an on-demand show, mutea television programming, move a cursor on a display up or down,increase/decrease volume, increment/decrement channels, fast forward aprogram listing in time, access additional information of a highlightedregion 110, roll up an electrically controlled curtain, answer a call,disable a message box appearing on a media guide, request a flightattendant's attention, request a waitress' attention for refilling up adrink, and so on.

Similarly, a user may stir the stirring rod 608 counter-clockwise.Consequently, proximity sensor 708 may first detect the induced magneticfield from the magnet 722, follows by the proximity sensor 706 and 704in that order as the magnet 722 moves within vicinity of each sensor.Alternate techniques for detecting the motion of the stirring rod 608may be employed. For example, the rod 608 may include an accelerometerthat detects motion and/or rotation. Those of ordinary skill may employother known detection techniques to sense rotation and/or movement ofthe stirring rod 608 and/or fluid.

A clockwise motion may include the following proximity detectionsequences: 706-708-704, 708-704-706, 704-706-708. Similarly, thefollowing sequences may be used to indicate a counter-clockwise motion:704-708-706, 708-706-704, 706-704-708. Thus, in certain embodiments aclockwise or counter-clockwise motion is detected by the processor 710using relative positional movement to determine the direction of motion.

In some situations, a user may start at a position that is of equaldistance to two of the three proximity sensors: 704, 706, and 708 and,therefore, both sensors may sense the induced magnetic field from themagnet 722. However, since the stirring rod 608 moves away from one ofthe two sensors while moving closer to the other, the processor 710 canresolve such an uncertainty by tracking the position or relativedistances of the stirring rod 608 with respect to the two sensors. Forexample, if the stirring rod 608 starts in between sensor 704 and 708and moves clockwise towards 706, the processor 710 may collect datapoints along the path the rod 608 has taken. The processor 710 maycalculate that the stirring rod 608 has moved closer to 704 as opposedto 708, and if the sensor 706 subsequently detects the magnetic field,the processor 710 may resolve the uncertainty by determining that therod 608 has started at a position closer to the sensor 704 and has movedfrom 704 to 706, which corresponds to a clockwise motion.

Other methods exist for resolving the position and/or motion of thestirring rod 608. For example, the processor 710 may receive signalstrength and/or magnetic field strength data from the sensors 704, 706and 708. If 704 and 708 both detect an equal amount of magnetic fieldinduced by the magnet 722 because the rod 608 has started at a positionin between the two sensors, as the stirring rod 608 moves away from oneand toward the other, the difference in signal strengths as detected bysensor 704 and 708 will increase. In the situation in which a user stirsthe stirring rod 608 in a clockwise direction, the signal strength ofthe signal detected by sensor 704 increases as the signal strength forsensor 708 decreases. Therefore, the processor 710 determines that therod 608 has started at a position closer to 704 and uses this as astarting point to determine the rotation of the stirring rod. Othermethods for resolving the movement of the stirring rod 608 as known bythose of ordinary skill may be employed. To simplify the illustration,only three sensors are drawn in FIG. 7. Therefore, increasing the numberof sensors may increase sensitivity and resolution of detection of thecontroller system 600.

The acoustic sensor 714 may be used to support additionalfunctionalities that may accompany functionalities supported by theproximity sensors 704, 706, and 708. The acoustic sensor 714 may be anytype of acoustic sensors capable of detecting acoustic signals, such assounds, created by a user interacting with an object. In someembodiments, the acoustic sensor 714 include a microphone.

According to one embodiment, when a user taps the liquid container 602with the stirring rod 608, sound waves propagate from the point ofcontact to the acoustic sensor 714 located either on top of, embeddedwithin, or in the vicinity of the platform 604. Depending on the type ofacoustic sensor and its capability, the acoustic sensor 714 may also belocated remotely from the platform 604. The received acoustic signalsmay first be processed by various analog and/or digital circuitsdesigned for signal processing before reaching the processor 710.

The acoustic sensor 714 may receive sounds other than a user tapping theliquid container 602 with the stirring rod 608. For example, a user mayhave to pause an on-demand program or recorded media program currentlybeing watched in response to some other activity or event. That otheractivity or event may affect an condition of the item or environmentsurrounding the system 600. In one instance, the event may result as asound or change in ambient sound conditions. For example, if a neighboror friend is ringing a door bell, the system 700 via an acoustic sensormay sense the ringing sound of the bell and pause the play of a mediaprogram for a period of time while the user answers the door. The system600 may pause the media program until a subsequent user interaction isdetected to indicate that the user is ready for the media program toresume.

The acoustic sensor 714 may detect the acoustic waves sent by theringing bell and pause a television program for the user automatically.Similarly, when a house phone or cell phone rings, the acoustic sensor714 may detect such sounds and, again, pause an off-line program (e.g.on-demand, a recorded program, a DVD movie) that a user is watching.Alternatively, the controller system 600 may mute a television programthe user is watching, whether it is a broadcast, recorded, or on-demandprogram. The second situation is especially useful in that users, beforeanswering a call or while talking on the phone, often must first lookfor a remote controller and then, while being distracted by thisprocess, find the mute button to mute the media program.

In certain embodiments, while a person is cooking and is receiving acall, the remote controller system 600 can automatically turn off thestove or lower the heat of a stove to avoid ruining a meal. In someother embodiments, for safety reasons or to avoid ruining a meal, anacoustic sensor may detect the oven timer alarm and, depending on thecommands pre-programmed into the processor 710, the controller system600 can automatically pause the media program the user is currentlywatching and/or lower the volume of the program to allow the user tomore clearly hear the timer's alarm. Many scenarios or situations mayexist in which a user may benefit from the controller system 600 that iscapable of coordinating the operation of one electronic device inresponse to the operation of another device, system, and/or item, or thesurrounding environmental conditions.

Acoustic signals associated with common door bells, timer alarms,telephone ring tones may be first pre-recorded and then stored in memorylocated either on board with the processor 710 or at a remote locationaccessible by the processor 710. Alternatively, the system 600 may betrained by sensing various conditions, e.g., a user's door bell, andstoring the sensed sound associated with the particular item. A user mayprogram the controller system 600 so that certain recorded sounds areassociated with commands as defined by the user. The user may firstrecord certain sounds by playing the sounds to the acoustic sensor 714located on, within, or in proximity to the remote controller system 600.

In some embodiments, the remote controller system 600 is configured toallow a user to select from a list of commands for assigning certaincommands to certain user interactions or sounds. In other embodiments,the controller system 600 or 700 is configured to allow a user toprogram customer or user-defined commands where the controlledelectronic device supports user-defined command programming. The system600 may support user-defined interactions and/or conditions that can beassociated with control data and/or commands for controlling anelectronic device.

Depending on the amount and/or kinds of functionalities a user desires,in some embodiments, the controller system 600 can contain only acertain type of sensor and limited types of sensors. For example, thesystem 600 or 700 may include the acoustic sensor 714 for sensingsounds. The system 600 may include the proximity sensors 704, 706, and708, for sensing movement of an item. The system 600 may include othersensors for sensing other conditions. One or more of the types ofsensors used for detection certain conditions may be used, at certaintimes, for controlling an electronic device.

Once the sensed acoustic signals are received by the acoustic sensor714, the signals may be processed by a signal processing circuit. Onecomponent of analog signal processing may include an operationalamplifier, such as the acoustic amplifier 716, to first amplify thereceived signals. Other filters, such as a low pass filter, may beincluded in the acoustic amplifier 716, to assist with filtering out anyunwanted ambient noise signals. In some embodiments, the acousticamplifier 716 may further include a band-pass filter capable offiltering out frequencies outside a pre-defined range of frequencies, asdefined by a designer or adjusted by a user.

In certain embodiments, frequency ranges to be filtered are adjustableso that a user can customize the types of acoustic noise that the systemshould filter out to enhance the signal to noise ratio, SNR, of thereceived acoustic signals. For example, a user may wish to eliminatenoises from the received acoustic signals to reduce interference. Thesystem 600 may record sound profiles associated with noise to befiltered, which may include, for example, ambient noise or a barkingnoise from a dog, and then store the sound profile so that the system600 may filter sounds of this profile from received audio signals. Byrecording sound profiles of common noises and eliminating these soundprofiles from the received acoustic signals, the signal-to-noise ratio,SNR, of any acoustic signal may be increased. Accordingly, the accuracyof determining what each received acoustic signal may correspond to mayalso be increased.

After the received signals have been filtered by the acoustic amplifier716, the voltage detector 718 may convert the acoustic signals intovoltages. Various techniques may be employed for encoding the receivedacoustic signals. For example, the frequencies of an acoustic signal maycorrespond to discrete voltage levels. In other instances, theamplitudes of the acoustic signals may correspond to discrete voltages.In some embodiments, both frequency and amplitude information may beencoded together to correspond to discrete voltage levels. The voltagedetector 718 may also include or be connected to an analog to digitalconverter, so that voltages corresponding to the frequencies and/oramplitudes of the acoustical signals may be encoded as binaries to beprocessed by the processor 710.

The processor 710 may contain a look-up table from which the processor710 can determine which control command a sound profile may correspondto. For example, tapping an empty liquid container may mean that theuser wants to pause an on-demand television and would like to refill aliquid container. However, if the liquid container contains asubstantial amount of liquid, the tapping of the container may generatea different sound profile, SP1, than the sound profile of tapping anempty glass, SP2 and, therefore, the processor 710 may look up thecommands that correspond to each of these sound profiles. For example,in the look-up table, SP1 may indicate a ‘select’ command. SP2, mayindicate a ‘pause’ command as the tapping of an empty glass wouldprobably mean that the user desires to get up to refill the liquidcontainer 602 and would, therefore, be away from watching the mediaprogram.

The processor 710 may perform additional processing and, particularly,digital signal processing using various signal processing techniques,such as Fourier transform, Laplacian transform, Wavelet Transform,and/or any other time-domain and/or spatial domain dependent signalprocessing techniques.

The processor 710 may include any type of microprocessor ormicrocontroller. In certain embodiments, the processor includes an AtmelAT89S52, 8-bit microcontroller. In other embodiments, the processor 710is an embedded processor in which the architecture and various othercomponents were customized for the remote controller system 600. Theprocessor 710 may also include a Field-Programmable-Gate-Array that auser may program functionalities that the user wishes to include in theremote controller system 600. The processor 710 may be located withinthe controller system 600. Alternatively, the processor 710 may belocated at a remote location accessible through the communicationsinterface 712. The controller system 600 may offload a portion ofprocessing to a more powerful processor located remotely.

The processor 710 may receive sensor data from the proximity sensors704-708 and/or the acoustic sensor 714, or some other sensor. Althoughthe received sensor data may have been filtered and/or processed, theprocessor may contain additional signal processing components asdescribed above for further processing the data into a desirable format.The processor 710 may be built on the same board as the communicationsinterface and may communicate with the communications interface 712through on-board buses. Alternatively, the communications interface 712may be located on a separate chip and/or board from the processor 710and may communicate with the processor 710 using any of existing knownserial and/or parallel communication protocols. Once the processor 710receives signals sensed by the sensors, the processor 710 may thenretrieve the corresponding command from a look-up table. In someembodiments, to maintain data integrity, such as to avoid interferenceor degradation of signal in transport, the processor 710 may includeerror bits, such as parity bits, in the binary code of a user inputcommand. Other known encryption techniques may be employed. Theprocessor 710 will then send the encoded data to the communicationsinterface 712.

The communications interface 712 handles communications between theprocessor 710 and/or any other electronic devices. The communicationsinterface may receive from the processor 710 encoded binary datarepresentative of commands to be executed. In some embodiments, thecommunications interface 712 includes the wireless interface 720. If thewireless communications protocol for the wireless interface 720 isinfrared, the wireless interface 720 may include light emitting diodes,LEDs, that may transmit infrared signals to a receiver located remotelyat an electronic device. The LEDs may send out a series of light pulsescorresponding to the appropriate binary codes sent by the processor 712.

For example, a binary code corresponding to pausing a television may be001 0001. The infrared, or any other wireless communication schemes, mayuse space coding in which the length of spaces between pulses ofinfrared light may represent a one or a zero. The illustrative codeabove includes a 4-bits command following the 3-bits address. Uponreceiving the 7 bits code, the receiver may first verify that it is theintended recipient by matching the device address with the binary 001 ofthe received binary string. The receiver may then interpret the commandcode following the address code by accessing a look-up table containingcommands and their corresponding binary codes. The 4-digit command codemay then be sent to a processor located at the electronic device onwhich the command will be implemented. In the illustrative embodiment,0001 corresponds to pausing a television program. The processor of theelectronic device, such as a cable set-top box, may pause the televisionprogram currently being provided by the set-top box.

In some embodiments, the communications interface 712 include a wiredinterface that connects the remote controller 600 to a computer. Theconnection may be implemented using a USB cable. A user may use thecomputer to download new command codes to and/or modify any existingcommand codes of the processor 710 in the remote controller system 600.The computer may contain software tools that may help a user to programthe remote controller 600.

FIG. 8 is a functional block diagram 800 illustrating one or more remotecontrollers 806 and 808 in communications with an interactive userequipment 802 according to one embodiment of the invention. Thefunctional block diagram 800 includes an interactive user equipment 802,a first remote controller interface 806, a second remote controllerinterface 808, a first communications channel 810, and a secondcommunications channel 812. The interactive user equipment 802 alsoincludes a user input interface 310. The first remote controllerinterface 806 may correspond to the communications interface 712 of theremote controller system 600. The second remote controller interface 808may be the communication interface of the conventional remote controller500. The communications channels 810 and 812 may support any of theabove-mentioned communications protocols, such as, infrared, wi-fi, andradio for wireless protocols and USB, PCI, Serial, Ethernet, and thelike for wired protocols.

The interactive user equipment 802 may be controlled by the first andsecond remote controller interfaces 806 and 808 of the controller 500and the controller system 600, respectively. However, at any moment intime, only one user input or both inputs may be received from the tworemote controller interface 806 and 808.

In some embodiments, the first remote controller interface 806 includesa different software application and/or support a differentcommunications protocol than the second remote controller interface 808.The user input interface 310 may be configured to communicate with bothinterfaces. For example, the first remote controller interface 806 maybe part of the remote controller system 600 and contain a list of inputcommands, such as automatically recording a television program, that arenot currently available on the second remote controller system 808, suchas the conventional remote controller 500. The user interface 310 may beconfigured to execute commands received from either interfaces 806 or808 regardless whether the controller 500 and the controller system 600support the same functionalities.

The first and second remote controller interfaces 806 and 808 mayutilize different communications protocols when communicating with theuser input interface 310. For example, the second remote controllerinterface 808 may communicate with the user input interface 310 using aninfrared wireless protocol while the remote controller interface 806 mayuse Bluetooth for communicating with the user input interface 310. Theuser input interface 310 may then contain applications, drivers, andhardware receivers for working with both types of communicationsprotocols.

The system 600 and/or controller 500 may be configured to allow a userto enable/disable certain commands such that one of the system 600 andcontroller 500 is able to initiate particular control operations. Insome embodiments, a portion of commands may be initiated by both thesystem 600 and controller 500 independently.

If a particular electronic device or user equipment 802 requiresparticular command codes, the system 600 and controller 500 maycooperate to ensure that either system is configured with the necessarycommand codes. For example, a user may have the option to transfercertain controls and/or command codes between the conventional remotecontroller 500 and the controller system 600 through the first andsecond remote controller interfaces 806 and 808. To support transferringcommands from one to the other, the communications channel 810 may be abi-directional communication channel to enable the remote controller 600to receive the command codes from the conventional remote controller500. In some embodiments, the controller system 600 may retrieve commandcodes from the conventional remote controller 500 by communicatingdirectly with the communications interface, such as the second remotecontroller interface of the conventional remote controller system 500.

In other embodiments, since the conventional remote controller 500 hasthe same look-up table containing the same command codes as what isstored on the interactive user equipment 802, the first remotecontroller interface 806 can communicate directly with the user inputinterface 310 and retrieve the command codes from the interactive userequipment 802 to the remote controller system 600. This way, a user nolonger has to program a new remote controller system 600 to include allthe functionalities and features of the conventional remote controller500. However, this does not mean that the remote controller system 600is confined to the same list of command codes as that of theconventional remote controller 500. In fact, as described above, a usermay have the options to program or customize the functionalities of theremote controller system 600.

The user interface 804 may prompt a user to indicate which one of thecontroller 500 and controller system 600 the user wishes to use tocontrol the user equipment 802. Both remote controller interfaces may beused to control the same device. Both controller may be configured tocontrol the same portion of operations. Each controller 500 and 600 maybe configured to control a different portion of user equipment 802operations. If the user equipment 802 includes multiple devices, theinterface 804 may support configuration of controller 500 and/or 600 tocontrol certain operations of each of the multiple devices.

FIG. 9 shows an illustrative top down view of the surface of acontroller system 900 in accordance with an embodiment of the invention.The controller system 900 includes a platform 604, and sensors 902, 904,and 906. The platform 604 may house a sensor array made from sensorssuch as the sensors 902, 904 and 906. The sensors 902, 904, and 906 maycorrespond to sensors 704, 706, and 708 of the remote controller system600. The sensors 902, 904, and 906 may include any types of sensors suchas, without limitations, reed relays, hall-effect sensors/switches,pressure sensors, weight sensors, heat sensors, magnetic sensors, opticsensors, etc. The platform 604 may further include other circuitrycomponents (not shown), such as the circuitry illustrated in FIG. 7. Thesensors may be distributed evenly throughout the platform 604. Dependingon the need, the platform 604 may also support sensors of differentkinds and distribute the different sensors on different parts of theplatform 604.

In operation, sensors 902, 904, and 906 may include pressure and/orweight sensors used to detect the amount of pressure exerted on thesurface of the platform 604. Using the pressure data, the remotecontroller detector 900 may determine a user input corresponding to auser interaction with the sensor. For example, sensors 902, 904, and 906may be used to detect the pressure that the liquid container 602 exertson the surface of the platform 604. As described earlier, remotecontroller system 900 may continuously measure the amount of pressureexerted on the platform 604 while a user is consuming the liquid in theliquid container 602. When the liquid container 602 is first placed onthe platform 604 of the remote controller system 900, a pressure sensormay detect this pressure and use this as the initial condition. Thesensors 902, 904, and 906 may send the initial condition or otherpressure data to a memory preferably embedded within the remotecontroller system 900 and under the surface of the platform 604.

The pressure sensors 902, 904, and 906 may continuously measure pressureexerted by an object, such as the liquid container, resting on the topsurface of the liquid remote controller system 900. At some time, theliquid remote controller system 900 may detect a substantial change inpressure (e.g. the pressure has decreased to a level substantially belowthe initial condition). Consequently, the liquid remote controller maycontrol one or more operations of the electronic device using the changein pressure. For example, when the pressure has decreased substantiallyafter some time, t, the remote controller system 900 may anticipate theuser getting up to refill the liquid container 602. Accordingly, theremote controller system 600 may automatically execute a command inresponse to a substantial change in pressure that may indicate an emptycontainer.

The pressure change may also be used to control other operations of anelectronic device such as, without limitations, to turn off a TV, toturn on a TV, to begin recording a show because the user is not watchingand the tuner can now be tuned to record a show, heat up an oven, beginheating/microwaving a beverage the user was drinking (e.g. more hotwater for tea), play an audio commercial as the user may still hear thesound, not play a video commercial if the advertiser would like to onlyplay the commercial when the user is watching the television, remindusers of calls missed when watching the program, mute the televisionand/or brightness of the display to conserve energy, roll up thecurtain, light up the lights in the kitchen, etc.

One or more of the operations may also be executed sequentially. Forexample, when a user gets up to refill the liquid container 602, theremote controller system 900 may first pause the television program,such as an on-demand show or a recorded program, and immediately recorda show to a DVR or TiVo in the background for the user.

Other methods for predicting a user behavior, such as to refill a liquidcontainer 604, may include detecting a close to zero pressure exerted onthe remote controller system 900, because when a user lifts up theliquid container 604, no pressure would be exerted on the liquid remotecontroller 900. To differentiate between a user lifting up the liquidcontainer 604 for a refill with a user consuming the liquid, the remotecontroller system 900 may track the amount of time that the user hasused while the liquid container 604 was not in contact with the remotecontroller system 600. For example, lifting up the container 604 forconsuming the liquid contained within would require less time than forgoing to the kitchen for a refill.

To improve on the accuracy of the remote controller system 900, thesystem 900 may initially request a user to indicate to the system 900whether the previous user behavior was for consuming the liquid or forrefilling the container 604. That way, the system may more reliablyinterpret a user behavior and accurately execute the appropriate usercommand. Other sensors may exist to assist the remote controller system900 in making certain decisions. For example, an optical sensor facingto the side of the remote controller system 900 (not shown) may beincluded to detect whether a user next to the optical sensor is gettingup to leave the seat or is sitting still. Presumably, a user may sit atthe same seat when consuming the liquid. The optical sensor may sendlight pulses to a user and detect light reflected from or absorbed bythe user. Similarly, the sensor may include an acoustic wave sensorsimilar to that of an ultrasound transducer that may propagate soundwaves to the user and detect waves reflected from or absorbed by theuser. Both methods utilize the fact that when a user is not present,very little light and/or sound waves may be reflected or absorbed asopposed to when a user is present. These techniques may also be used todetect the presence or absence of an item, such a cup on the platform604.

The planar sensor array formed by sensors such as the sensors 902, 904,and 906 may enable the remote controller system 900 to track a usermoving an object resting on top of the system 900. The sensor array mayinclude a two dimensional array where each sensor, such as the sensor902, is mapped to a specific location of the platform 604. Each locationmay correspond to an x-y coordinate on the surface of the platform 604.The system 900 may identify the position of an object on top of thesystem 900 at any moment in time by detecting the pressure experiencedby one or more sensors 902-906 of the array of sensors. Other types ofcontact, optical, friction, and/or surface sensor may be employed as analternative or to complement the pressure sensors. For example, if auser is moving an object from where sensor 904 is located to where thesensor 902 is located, the remote controller system 900 may encode thissensed data as a user input for moving a highlighted region 2010 up onthe display 100.

In other embodiments, by moving an object, such as the liquid container602, towards the upper edge of the platform 604 can enable thecontroller system 900 to interpret this interaction as moving thehighlight region 110 up, even though no explicit navigational regions orbuttons are present. Similarly, by moving the liquid container 602towards the left side of the platform 605, a user may move thehighlighted region 110 to a cell left of where the region was onpreviously. Various embodiments and functionalities may exist to allow auser to interact with a media guidance application and/or any otherapplications for controlling electronic devices without explicit buttonsand/or regions appearing on the platform 604.

FIG. 10 shows an illustrative controller system 1000 according to anembodiment of the invention. The remote controller system 1000 includesthe platform 604, a main menu region 1010, and navigational regions. Thenavigational regions include the up region 1002, the right region 1004,the down region 1006, and the left region 1008. The main menu region1010 may correspond to a main menu button. Similarly, the up, right,down, and left regions 1002-1008 may correspond to an up, right, down,and left button respectively. Each button may include a sensor, aswitch, or any controlling mechanism or user interface element that mayallow a user to trigger an event or to control some aspects of a machineor a process. The remote controller system 1000 may also include acommunications interface (not shown), which may allow the system 1000 tocommunicate with an electronic device using any of the above-mentionedcommunication channels. The system 1000 may also include additionalregions (not shown). By moving an object, such as the liquid container602 over on top of the various regions or ‘buttons’, a user can controlone or more operations of a media guidance application or an electronicdevice.

In some embodiments, the remote controller system 1000 consists of aplanar sensor array as described with respect to FIG. 9. The twodimensional sensor array may include sensors mapped throughout theentire remote controller system 1000. The sensor array may includesensors 704, 706, 708, 902, 904 and 906. These sensors may detect anobject resting upon the platform 604. Alternatively, the system 1000 mayinclude only sensors below the regions so that only sensors beneath aregion over which a user has placed an object may be activated. Thesystem 1000 does not necessarily have to include the actual outlines ofthe regions as illustrated in the figure and may be able to detect thevarious navigational and/or functional inputs by sensing that a user ismoving the liquid container 602 up from the center or left from thecenter, etc.

A user's interactions with the remote controller system 1000 may bedetected by the various sensors underneath the surface of and/or incontact with the surface of the platform 604. For example, a user mayinteract with various regions of the remote controller 1000 by moving aliquid container 602 across the surface of the platform 604. Whilewatching a television program, a user may ‘push’ the main menu ‘button’by moving the liquid container 602 on top of the main menu region 1010.In some embodiments, in response to detecting the liquid container ascurrently on top, the one or more sensors underneath the main menuregion 1010 are activated. Alternatively, a switch, such as a reed relay704, may be closed. The activated sensor or closed switch may bedetected by the processor 710 which then generates a command codecorresponding to the ‘button’ for the main menu region 1010. Theinteractive user equipment 802 may execute the command code (e.g. 0010001) and prompt a user to a main menu interface on the display 100.

Once the main menu button gets ‘pushed’, a user may interact with a userinterface application, such as a media guidance application, by the useof the navigational buttons and/or input mechanisms such as tapping theremote controller system 1100 with an object. A user may move thehighlight region 110 up and down by moving the liquid container 602 tothe up and down regions 1002 and 1006. To navigate a cursor on adisplay, a user may simply move the liquid container 602 to thecorresponding regions for up/down/left/right. In some embodiments a usermay have to tap the up/down region 1002 and 1006 to increase/decrease avolume. In other embodiments, a user may first select a ‘change volume’option on the display 100 and then increase/decrease the volume bymoving an object to the up or down regions 1002 and 1006. Similarly, auser may scroll media listings ordered based on time by moving an objectover on top of the left and right regions 1008 and 1004.

Other user interactions may also exist to better assist a person innavigating a media guidance application and/or controlling an electronicdevice through the user input interface 310. For example, a user may tapthe main menu region 1010 for accessing the main menu screen, which mayeither correspond to a program guidance menu or some other userinterface depending on the device accessed and the interface associatedwith the device. Moving the liquid container 602 over to the main menuregion 1010 may correspond to a different user input than tapping themain menu region 1010 once. Similarly, tapping the up region 1002 twicemay allow a user to fast scroll a media listing or any other listings.Tapping the right region 1004 twice may fast forward the air time toallow a user to quickly check what show may be aired on a channel at amuch later time.

Each region may correspond to a different command depending on whichscreen a user is currently viewing. For example, once a user is alreadyin the main menu screen, moving an object over on top of the main menuregion 1010 may allow a user to ‘select’ a highlighted program. Beforein the main menu screen, a user may have to tap as opposed to just movethe container 602 over on top of the main menu ‘button’ once to‘select’.

Other features described with respect to previous embodiments may alsobe employed in the remote controller system 1000 and vice versa. Forexample, the two dimensional sensor array may detect the amount ofliquid in the liquid container 604. Accordingly, the sensors of thesystem 1000 may use the detected pressure and/or weight information orany other sensed data to perform operations on an electronic deviceautomatically. For example, a media program may be paused or a recordingmay start automatically based on the amount of a liquid remaining in theliquid container 604. In addition to interacting with the remotecontroller system 1000 by moving an object across the surface of theplatform 604, the remote controller system 1000 may include a stirringrod 608 that a user may use to tap the various regions of the remotecontroller system 1000 or to tap the liquid container 602. Otherfeatures and functionalities associated with a user interacting with astirring rod 608 as described with respect to FIGS. 6 and 7 may beincluded in the remote controller system 1000.

FIG. 11 shows an illustrative controller system 1100 according to anembodiment of the invention. The controller system 1100 includes aplatform 604, an icon 1 region 1102, an icon 2 region 1104, an icon 3region 1106, an icon 4 region 1114, an icon 5 region 1116, an icon 6region 1118, an icon 7 region 1120, a channel region 1108, a rest region1110, and a volume region 1112. Sensors of the types describedthroughout the application may be implemented underneath the platform604 for detecting a user moving an object over on top of any one of theregions. Each region may then correspond to one or more sensors placedunderneath the region below the surface of the platform 604.

In some embodiments, the remote controller system is on top of or builtinto a table so that each icon can support a standard size of liquidcontainer. In other embodiments, the remote controller system 1100 maybe smaller if a user were to interact with a small object that requiresless surface space.

A user may interact with or control an electronic device through theremote controller 1100 by moving an object, such as a beer can, a coffeemug, a glass of wine, over on top of one of the regions. Each iconregions, such as an icon 1 region 1102 and icon 2 region 1104, maycorrespond to a different user interface area of the display 100. A usermay move the liquid container 602 to any one of the regions to accessinformation provided by a media guidance application and/or another userinterface application of an electronic device.

In some embodiments, the rest region 1110 may correspond to the on/offbutton 502 of a conventional remote controller system 500. In someembodiments, tapping the liquid container 602 against the top of therest region 1110 can turn on an electronic device and tapping thecontainer 602 twice can turn off the electronic device. Similarly, auser may move the liquid container 602 over on top of icon 1 region1102, which may correspond to the guide button 506. Alternatively, auser may tap the liquid container 602 against the top of icon 1 region1102 to access a media guide and display the guide on the display 100.If a user wishes to access additional information associated with atelevision program, the user may move the liquid container 602 over ontop of the icon 2 region 1104. Other icons may correspond to similarfunctions of the conventional remote controller 500 as described withrespect to FIG. 5, or may correspond to features and/or functionalitiesunique to the remote controller systems 600, 900, 1000 and 1110.

A two dimensional array may be implemented in the remote controllersystem 100 for detecting any movement changes to an object placed on topof the surface of the platform 604. Such sensors may include, withoutlimitations, reed relays or hall effect sensors if the liquid containercontains a magnet, pressure and acoustic sensors as described above,heat sensors as the point of contact between an object and the surfaceof the platform 604 may create heat, optic sensors for measuring lightabsorbed or reflected off an object, and acoustic wave or ultrasonictransducer for measuring amount of sound waves reflected or absorbed byan object, etc.

Alternatively, sensors may exist beneath the various regions so thatonce a user has moved to a region under which there exists one or moresensors, the sensors may be activated and may deliver the sensed data toa processor either preferably located within the remote controllersystem 1100 or located at remote location accessible through acommunications interface.

Other icons may correspond to various other functionalities or featuresavailable to a user for accessing information or content of a mediaguidance application or for controlling an electronic device. In fact,the same remote controller system 1100 may be used to control multipledevices such as an interactive user equipment 802 and devices connectedto it, a curtain, a telephone, a stove, a microwave, etc. Certainregions, such as Icon 4 region 1114 may be reserved for controlling acurtain in the living room. Other regions, such as Icon 5 1116 may allowa user to access recorded programs stored on a DVR or TiVo. Icon 6region 1118 may bring up a keypad as shown in FIG. 5 of the conventionalremote controller system to allow a user to enter a channel number.

In fact, the remote controller system 1100 may contain all the functionsand/or commands of a conventional remote controller system. Similarly, auser may increment/decrement a channel by moving to the corresponding upor down regions of the channel region 1108. A user may also change thevolume of a device by moving an object 602 over on top of the volumechange region 1112. Additional regions may be added, or alternatively, auser can program the remote controller to perform specific operations.

The remote controller system 1100 may also be configured to detect userinteractions with the liquid container 604 for anticipating predicteduser behaviors that may occur after a detected user interaction. Asdescribed with respect to FIGS. 6 and 7, the remote controller 1100 mayautomatically pause an on-demand show if the system 1110 detects thatvery little amount of liquid is left in the container 602 and,therefore, the user may soon be going away from watching the program torefill the container 602.

It should be noted that the various features, functionalities, anddesigns of the controllers 600, 900, 1000 and 1110 may be integrated invarious portions into a controller system incorporating some or all ofthe features, functionalities, and designs disclosed in relation to eachsystem.

FIG. 12 shows a flow diagram 1200 of a method for controlling anelectronic device using a remote controller system according to anillustrative embodiment of the invention. The flow diagram 1200 includessteps 1202, 1204, 1206, 1208, 1210 and 1212. At step 1202, a platformmay be configured to support a liquid container. At step 1204, theremote controller system may provide a stirring rod to enable stirring aliquid in the liquid container. At step 1206, at least one sensor maysense a condition of at least one of the stirring rod and the container.At step 1208, the remote controller system may generate sensing data inresponse to sensing the condition. At step 1210, a processor of theremote controller system may process the sensing data into control data.At step 1212, the remote controller system may send the control data tothe electronic device.

FIG. 13 shows a flow diagram 1300 of another method for controlling anelectronic device using a remote controller system according to anillustrative embodiment of the invention. The flow diagram 1300 includessteps 1302 and 1304. At step 1302, the remote controller system maysense a user's interactions with a beverage container. At step 1304, theremote controller system may convert the user's interactions intocontrol information for controlling an operation of the electronicdevice.

FIG. 14 shows a flow diagram 1400 of a further method for controlling anelectronic device using a remote controller system according to anillustrative embodiment of the invention. Flow diagram 1400 includessteps 1402, 1404, 1406, 1408, 1410, 1412, and 1414. At step 1402, aninteractive program guide system may receive programs and program guideinformation from a user equipment device. At step 1404, the system mayfurther receive user control information. At step 1406, the system maybe configured to display the program guide information. At step 1408,the system may control the interactive program guide by first sensingvia at least one sensor a user's interactions with a beverage container(step 1410), generating the user control information in response to theuser's interactions (step 1412), and sending the user controlinformation to the user equipment device (step 1414).

The above described embodiments of the present invention are presentedfor purposes of illustration and not of limitation, and the presentinvention is limited only by the claims which follow.

1. A remote control apparatus for an electronic device comprising: aplatform for supporting a liquid container; a stirring rod for stirringa liquid in the liquid container; and a controller including: at leastone sensor for sensing a condition of at least one of the stirring rodand the container; a communications interface for sending control datato the electronic device; and a processor, in communication with atleast one sensor and the communications interface, configured for i)receiving sensor data from at least one sensor, ii) processing thesensor data into the control data, and iii) sending the control data tothe communications interface. 2-51. (canceled)